const router = require("koa-router")();
const Mock = require("mockjs");
const JWT = require("jsonwebtoken");
let {
  list,
  tablist,
  search,
  tabSilce,
  kstab,
  cheng,
  listtwo,
  city,
  yi,
  sortlist,
  yptablist,
  neitab,
  yzdp,
} = Mock.mock({
  "list|30": [
    {
      id: "@id",
      title: "@ctitle(10,20)",
      img1: "@image(100x100,@color)",
      "count|8000-10000": 8000,
      img2: "https://is1-ssl.mzstatic.com/image/thumb/Purple221/v4/38/a9/37/38a9374b-6a44-03b3-1acb-5d62e28d7a7b/AppIcon-0-0-1x_U007emarketing-0-5-0-0-85-220.png/246x0w.webp",
      wei: "微脉健康",
      mai: "微脉健康官方账号",
      name: "@cname(3,5)",
      "price|100-1000": 1,
    },
  ],
  "tablist|4": [
    {
      "title|+1": ["全部", "疾病健康", "科学育儿", "安心预产"],
      "children|100": [
        {
          "id|+1": 1,
          img: () => {
            const width = 100;
            const height = Mock.Random.integer(100, 200);
            return `https://picsum.photos/${width}/${height}`;
          },
          name: "@cname",
          title: "@ctitle(6,8)",
          //科室
          "Department|1": [
            "呼吸内科",
            "消化内科",
            "神经内科",
            "心血管内科",
            "内分泌科",
            "普通外科",
            "神经外科",
            "心胸外科",
            "泌尿外科",
            "肛肠外科",
            "骨外科",
            "妇科",
            "产科",
            "儿科综合",
            "小儿内科",
            "儿童营养保健科",
            "肿瘤内科",
            "肿瘤外科",
            "耳鼻喉科",
            "皮肤科",
            "麻醉科",
            "中医内科",
            "中医外科",
            "中医妇科",
          ],
          "level|1": [
            "医士",
            "护士",
            "药剂师",
            "主治医师",
            "主管护师",
            "主管药技师",
            "副主任医师",
            "主任医师",
            "医师",
            "护师",
            "副主任药师",
            "副主任药师",
            "副主任技师",
            "副主任护师",
            "主任药师",
            "主任技师",
            "主任护师",
          ],
          "yi|1": [
            "中国人民解放军总医院",
            "浙江省中医院",
            "中国医学科学院北京协和医院",
            "北京大学第一医院",
            "北京大学第三医院",
            "中国医科大学附属第一医院",
            "上海交通大学医学院附属仁济医院",
            "上海交通大学医学院附属瑞金医院",
            "复旦大学附属中山医院",
            "复旦大学附属第二医院",
            "浙江大学医学院附属第一医院",
            "浙江大学医学院附属第二医院",
            "郑州大学第一附属医院",
            "华中科技大学同济医学院附属协和医院",
            "华中科技大学同济医学院附属同济医院",
            "中南大学湘雅二医院",
            "中南大学湘雅医院",
            "中山大学附属第一医院",
            "南方医科大学南方医院",
            "四川大学华西医院",
            "空军军医大学第一附属医院",
            "中日友好医院",
            "中国医学科学院阜外医院",
            "中国医学科学院肿瘤医院",
            "北京大学人民医院",
            "首都医科大学附属北京儿童医院",
            "首都医科大学附属北京同仁医院",
            "首都医科大学附属北京天坛医院",
            "上海市第六人民医院",
            "上海交通大学医学院附属第九人民医院",
            "复旦大学附属儿科医院",
            "复旦大学附属肿瘤医院",
            "海军军医大学第一附属医院",
            "江苏省人民医院",
            "南京大学医学院附属鼓楼医院",
            "山东大学齐鲁医院",
            "广东省人民医院",
            "广州医科大学附属第一医院",
            "中山大学肿瘤防治中心",
            "陆军军医大学第一附属医院",
            "四川省人民医院",
          ],
        },
      ],
    },
  ],
  "kstab|23": [
    {
      "title|+1": [
        "妇产科",
        "儿科",
        "内科",
        "外科",
        "皮肤科",
        "耳鼻喉科",
        "中医科",
        "口腔科",
        "眼科",
        "骨科",
        "肿瘤科",
        "疼痛科",
        "麻醉科",
        "报告解读科",
        "医疗美容科",
        "心理咨询科",
        "其他",
        "呼吸科",
        "神经内科",
        "心内科",
        "消化科",
        "医学影像科",
        "超声科",
      ],
      "children|+1": [
        {
          word: ["妇产科全部", "妇产科综合", "妇科", "产科", "计划生育科"],
        },
        {
          word: ["儿科全部", "儿科综合", "新生儿科"],
        },
        {
          word: [
            "内科全部",
            "内科综合",
            "呼吸内科",
            "老年病科",
            "消化内科",
            "内分泌科",
            "神经内科",
            "心血管内科",
            "肾内科",
          ],
        },
        {
          word: [
            "外科全部",
            "外科综合",
            "普通外科",
            "泌尿外科",
            "整形外科",
            "神经外科",
            "心胸外科",
            "血管外科",
            "乳腺外科",
          ],
        },
        {
          word: ["皮肤科综合"],
        },
        {
          word: ["耳鼻喉科综合"],
        },
        {
          word: [
            "中医科全部",
            "中医科综合",
            "中医科内科",
            "中医针灸科",
            "中医推拿科",
          ],
        },
        {
          word: ["口腔科综合"],
        },
        {
          word: ["眼科综合"],
        },
        {
          word: ["骨科综合"],
        },
        {
          word: ["肿瘤科综合"],
        },
        {
          word: ["疼痛科综合"],
        },
        {
          word: ["麻醉科综合"],
        },
        {
          word: ["超声科"],
        },
        {
          word: ["医疗美容科综合"],
        },
        {
          word: ["心理咨询科综合"],
        },
        {
          word: ["其他全部", "呼吸道疾病问诊", "其他", "其他综合"],
        },
        {
          word: ["呼吸内科"],
        },
        {
          word: ["神经内科综合"],
        },
        {
          word: ["心内科综合"],
        },
        {
          word: ["消化内科综合"],
        },
        {
          word: ["医学影响科综合"],
        },
        {
          word: ["超声科"],
        },
      ],
    },
  ],
  cheng: [
    {
      city: [
        {
          title: "A",
          lists: [
            "阿坝",
            "阿拉善",
            "阿里",
            "安康",
            "安庆",
            "鞍山",
            "安顺",
            "安阳",
            "澳门",
          ],
        },
        {
          title: "B",
          lists: [
            "北京",
            "白银",
            "保定",
            "宝鸡",
            "保山",
            "包头",
            "巴中",
            "北海",
            "蚌埠",
            "本溪",
            "毕节",
            "滨州",
            "百色",
            "亳州",
          ],
        },
        {
          title: "C",
          lists: [
            "重庆",
            "成都",
            "长沙",
            "长春",
            "沧州",
            "常德",
            "昌都",
            "长治",
            "常州",
            "巢湖",
            "潮州",
            "承德",
            "郴州",
            "赤峰",
            "池州",
            "崇左",
            "楚雄",
            "滁州",
            "朝阳",
          ],
        },
        {
          title: "D",
          lists: [
            "大连",
            "东莞",
            "大理",
            "丹东",
            "大庆",
            "大同",
            "大兴安岭",
            "德宏",
            "德阳",
            "德州",
            "定西",
            "迪庆",
            "东营",
          ],
        },
        {
          title: "E",
          lists: ["鄂尔多斯", "恩施", "鄂州"],
        },
        {
          title: "F",
          lists: ["福州", "防城港", "佛山", "抚顺", "抚州", "阜新", "阜阳"],
        },
        {
          title: "G",
          lists: [
            "广州",
            "桂林",
            "贵阳",
            "甘南",
            "赣州",
            "甘孜",
            "广安",
            "广元",
            "贵港",
            "果洛",
          ],
        },
        {
          title: "H",
          lists: [
            "杭州",
            "哈尔滨",
            "合肥",
            "海口",
            "呼和浩特",
            "海北",
            "海东",
            "海南",
            "海西",
            "邯郸",
            "汉中",
            "鹤壁",
            "河池",
            "鹤岗",
            "黑河",
            "衡水",
            "衡阳",
            "河源",
            "贺州",
            "红河",
            "淮安",
            "淮北",
            "怀化",
            "淮南",
            "黄冈",
            "黄南",
            "黄山",
            "黄石",
            "惠州",
            "葫芦岛",
            "呼伦贝尔",
            "湖州",
            "菏泽",
          ],
        },
        {
          title: "J",
          lists: [
            "济南",
            "佳木斯",
            "吉安",
            "江门",
            "焦作",
            "嘉兴",
            "嘉峪关",
            "揭阳",
            "吉林",
            "金昌",
            "晋城",
            "景德镇",
            "荆门",
            "荆州",
            "金华",
            "济宁",
            "晋中",
            "锦州",
            "九江",
            "酒泉",
          ],
        },
        {
          title: "K",
          lists: ["昆明", "开封"],
        },
        {
          title: "L",
          lists: [
            "兰州",
            "拉萨",
            "来宾",
            "莱芜",
            "廊坊",
            "乐山",
            "凉山",
            "连云港",
            "聊城",
            "辽阳",
            "辽源",
            "丽江",
            "临沧",
            "临汾",
            "临夏",
            "临沂",
            "林芝",
            "丽水",
            "六安",
            "六盘水",
            "柳州",
            "陇南",
            "龙岩",
            "娄底",
            "漯河",
            "洛阳",
            "泸州",
            "吕梁",
          ],
        },
        {
          title: "M",
          lists: ["马鞍山", "茂名", "眉山", "梅州", "绵阳", "牡丹江"],
        },
        {
          title: "N",
          lists: [
            "南京",
            "南昌",
            "南宁",
            "宁波",
            "南充",
            "南平",
            "南通",
            "南阳",
            "那曲",
            "内江",
            "宁德",
            "怒江",
          ],
        },
        {
          title: "P",
          lists: ["盘锦", "攀枝花", "平顶山", "平凉", "萍乡", "莆田", "濮阳"],
        },
        {
          title: "Q",
          lists: [
            "青岛",
            "黔东南",
            "黔南",
            "黔西南",
            "庆阳",
            "清远",
            "秦皇岛",
            "钦州",
            "齐齐哈尔",
            "泉州",
            "曲靖",
            "衢州",
          ],
        },
        {
          title: "R",
          lists: ["日喀则", "日照"],
        },
        {
          title: "S",
          lists: [
            "上海",
            "深圳",
            "苏州",
            "沈阳",
            "石家庄",
            "三门峡",
            "三明",
            "三亚",
            "商洛",
            "商丘",
            "上饶",
            "山南",
            "汕头",
            "汕尾",
            "韶关",
            "绍兴",
            "邵阳",
            "十堰",
            "朔州",
            "四平",
            "绥化",
            "遂宁",
            "随州",
            "宿迁",
            "宿州",
          ],
        },
        {
          title: "T",
          lists: [
            "天津",
            "太原",
            "泰安",
            "泰州",
            "台州",
            "唐山",
            "天水",
            "铁岭",
            "铜川",
            "通化",
            "通辽",
            "铜陵",
            "铜仁",
            "台湾",
          ],
        },
        {
          title: "W",
          lists: [
            "武汉",
            "乌鲁木齐",
            "无锡",
            "威海",
            "潍坊",
            "文山",
            "温州",
            "乌海",
            "芜湖",
            "乌兰察布",
            "武威",
            "梧州",
          ],
        },
        {
          title: "X",
          lists: [
            "厦门",
            "西安",
            "西宁",
            "襄樊",
            "湘潭",
            "湘西",
            "咸宁",
            "咸阳",
            "孝感",
            "邢台",
            "新乡",
            "信阳",
            "新余",
            "忻州",
            "西双版纳",
            "宣城",
            "许昌",
            "徐州",
            "香港",
            "锡林郭勒",
            "兴安",
          ],
        },
        {
          title: "Y",
          lists: [
            "银川",
            "雅安",
            "延安",
            "延边",
            "盐城",
            "阳江",
            "阳泉",
            "扬州",
            "烟台",
            "宜宾",
            "宜昌",
            "宜春",
            "营口",
            "益阳",
            "永州",
            "岳阳",
            "榆林",
            "运城",
            "云浮",
            "玉树",
            "玉溪",
            "玉林",
          ],
        },
        {
          title: "Z",
          lists: [
            "杂多县",
            "赞皇县",
            "枣强县",
            "枣阳市",
            "枣庄",
            "泽库县",
            "增城市",
            "曾都区",
            "泽普县",
            "泽州县",
            "札达县",
            "扎赉特旗",
            "扎兰屯市",
            "扎鲁特旗",
            "扎囊县",
            "张北县",
            "张店区",
            "章贡区",
            "张家港",
            "张家界",
            "张家口",
            "漳平市",
            "漳浦县",
            "章丘市",
            "樟树市",
            "张湾区",
            "彰武县",
            "漳县",
            "张掖",
            "漳州",
            "长子县",
            "湛河区",
            "湛江",
            "站前区",
            "沾益县",
            "诏安县",
            "召陵区",
            "昭平县",
            "肇庆",
            "昭通",
            "赵县",
            "昭阳区",
            "招远市",
            "肇源县",
            "肇州县",
            "柞水县",
            "柘城县",
            "浙江",
            "镇安县",
            "振安区",
            "镇巴县",
            "正安县",
            "正定县",
            "正定新区",
            "正蓝旗",
            "正宁县",
            "蒸湘区",
            "正镶白旗",
            "正阳县",
            "郑州",
            "镇海区",
            "镇江",
            "浈江区",
            "镇康县",
            "镇赉县",
            "镇平县",
            "振兴区",
            "镇雄县",
            "镇原县",
            "志丹县",
            "治多县",
            "芝罘区",
            "枝江市",
            "芷江侗族自治县",
            "织金县",
            "中方县",
            "中江县",
            "钟楼区",
            "中牟县",
            "中宁县",
            "中山",
            "中山区",
            "钟山区",
            "钟山县",
            "中卫",
            "钟祥市",
            "中阳县",
            "中原区",
            "周村区",
            "周口",
            "周宁县",
            "舟曲县",
            "舟山",
            "周至县",
            "庄河市",
            "诸城市",
            "珠海",
            "珠晖区",
            "诸暨市",
            "驻马店",
            "准格尔旗",
            "涿鹿县",
            "卓尼",
            "涿州市",
            "卓资县",
            "珠山区",
            "竹山县",
            "竹溪县",
            "株洲",
            "株洲县",
            "淄博",
            "子长县",
            "淄川区",
            "自贡",
            "秭归县",
            "紫金县",
            "自流井区",
            "资溪县",
            "资兴市",
            "资阳",
          ],
        },
      ],
    },
  ],
  "search|100": [
    {
      "id|+1": 1,
      img: () => {
        const width = 100;
        const height = Mock.Random.integer(100, 200);
        return `https://picsum.photos/${width}/${height}`;
      },
      title: "@ctitle(2)",
      desc: "@cword(5, 8)",
      "prcic|100-1000": 1,
    },
  ],
  "tabSilce|6": [
    {
      "title|+1": ["推荐", "妇产科", "儿科", "内科", "外科", "皮肤科"],
      "children|10": [
        {
          "id|+1": "@id",
          img: () => {
            const width = 100;
            const height = Mock.Random.integer(100, 200);
            return `https://picsum.photos/${width}/${height}`;
          },
          title: "@cname(2)",
          desc: "@cword(8,10)",
          "prcic|10-100": 1,
          "tu|10-100": 1,
          hpl: 100,
          "zxl|2000-5000": 1,
          "yi|1": [
            "浙江省人民医院",
            "浙江省中医院",
            "杭州市人民医院",
            "杭州市中医院",
            "宁波市人民医院",
            "宁波市中医院",
          ],
        },
      ],
    },
  ],
  cheng: [
    {
      city: [
        {
          title: "A",
          lists: [
            "阿坝",
            "阿拉善",
            "阿里",
            "安康",
            "安庆",
            "鞍山",
            "安顺",
            "安阳",
            "澳门",
          ],
        },
        {
          title: "B",
          lists: [
            "北京",
            "白银",
            "保定",
            "宝鸡",
            "保山",
            "包头",
            "巴中",
            "北海",
            "蚌埠",
            "本溪",
            "毕节",
            "滨州",
            "百色",
            "亳州",
          ],
        },
        {
          title: "C",
          lists: [
            "重庆",
            "成都",
            "长沙",
            "长春",
            "沧州",
            "常德",
            "昌都",
            "长治",
            "常州",
            "巢湖",
            "潮州",
            "承德",
            "郴州",
            "赤峰",
            "池州",
            "崇左",
            "楚雄",
            "滁州",
            "朝阳",
          ],
        },
        {
          title: "D",
          lists: [
            "大连",
            "东莞",
            "大理",
            "丹东",
            "大庆",
            "大同",
            "大兴安岭",
            "德宏",
            "德阳",
            "德州",
            "定西",
            "迪庆",
            "东营",
          ],
        },
        {
          title: "E",
          lists: ["鄂尔多斯", "恩施", "鄂州"],
        },
        {
          title: "F",
          lists: ["福州", "防城港", "佛山", "抚顺", "抚州", "阜新", "阜阳"],
        },
        {
          title: "G",
          lists: [
            "广州",
            "桂林",
            "贵阳",
            "甘南",
            "赣州",
            "甘孜",
            "广安",
            "广元",
            "贵港",
            "果洛",
          ],
        },
        {
          title: "H",
          lists: [
            "杭州",
            "哈尔滨",
            "合肥",
            "海口",
            "呼和浩特",
            "海北",
            "海东",
            "海南",
            "海西",
            "邯郸",
            "汉中",
            "鹤壁",
            "河池",
            "鹤岗",
            "黑河",
            "衡水",
            "衡阳",
            "河源",
            "贺州",
            "红河",
            "淮安",
            "淮北",
            "怀化",
            "淮南",
            "黄冈",
            "黄南",
            "黄山",
            "黄石",
            "惠州",
            "葫芦岛",
            "呼伦贝尔",
            "湖州",
            "菏泽",
          ],
        },
        {
          title: "J",
          lists: [
            "济南",
            "佳木斯",
            "吉安",
            "江门",
            "焦作",
            "嘉兴",
            "嘉峪关",
            "揭阳",
            "吉林",
            "金昌",
            "晋城",
            "景德镇",
            "荆门",
            "荆州",
            "金华",
            "济宁",
            "晋中",
            "锦州",
            "九江",
            "酒泉",
          ],
        },
        {
          title: "K",
          lists: ["昆明", "开封"],
        },
        {
          title: "L",
          lists: [
            "兰州",
            "拉萨",
            "来宾",
            "莱芜",
            "廊坊",
            "乐山",
            "凉山",
            "连云港",
            "聊城",
            "辽阳",
            "辽源",
            "丽江",
            "临沧",
            "临汾",
            "临夏",
            "临沂",
            "林芝",
            "丽水",
            "六安",
            "六盘水",
            "柳州",
            "陇南",
            "龙岩",
            "娄底",
            "漯河",
            "洛阳",
            "泸州",
            "吕梁",
          ],
        },
        {
          title: "M",
          lists: ["马鞍山", "茂名", "眉山", "梅州", "绵阳", "牡丹江"],
        },
        {
          title: "N",
          lists: [
            "南京",
            "南昌",
            "南宁",
            "宁波",
            "南充",
            "南平",
            "南通",
            "南阳",
            "那曲",
            "内江",
            "宁德",
            "怒江",
          ],
        },
        {
          title: "P",
          lists: ["盘锦", "攀枝花", "平顶山", "平凉", "萍乡", "莆田", "濮阳"],
        },
        {
          title: "Q",
          lists: [
            "青岛",
            "黔东南",
            "黔南",
            "黔西南",
            "庆阳",
            "清远",
            "秦皇岛",
            "钦州",
            "齐齐哈尔",
            "泉州",
            "曲靖",
            "衢州",
          ],
        },
        {
          title: "R",
          lists: ["日喀则", "日照"],
        },
        {
          title: "S",
          lists: [
            "上海",
            "深圳",
            "苏州",
            "沈阳",
            "石家庄",
            "三门峡",
            "三明",
            "三亚",
            "商洛",
            "商丘",
            "上饶",
            "山南",
            "汕头",
            "汕尾",
            "韶关",
            "绍兴",
            "邵阳",
            "十堰",
            "朔州",
            "四平",
            "绥化",
            "遂宁",
            "随州",
            "宿迁",
            "宿州",
          ],
        },
        {
          title: "T",
          lists: [
            "天津",
            "太原",
            "泰安",
            "泰州",
            "台州",
            "唐山",
            "天水",
            "铁岭",
            "铜川",
            "通化",
            "通辽",
            "铜陵",
            "铜仁",
            "台湾",
          ],
        },
        {
          title: "W",
          lists: [
            "武汉",
            "乌鲁木齐",
            "无锡",
            "威海",
            "潍坊",
            "文山",
            "温州",
            "乌海",
            "芜湖",
            "乌兰察布",
            "武威",
            "梧州",
          ],
        },
        {
          title: "X",
          lists: [
            "厦门",
            "西安",
            "西宁",
            "襄樊",
            "湘潭",
            "湘西",
            "咸宁",
            "咸阳",
            "孝感",
            "邢台",
            "新乡",
            "信阳",
            "新余",
            "忻州",
            "西双版纳",
            "宣城",
            "许昌",
            "徐州",
            "香港",
            "锡林郭勒",
            "兴安",
          ],
        },
        {
          title: "Y",
          lists: [
            "银川",
            "雅安",
            "延安",
            "延边",
            "盐城",
            "阳江",
            "阳泉",
            "扬州",
            "烟台",
            "宜宾",
            "宜昌",
            "宜春",
            "营口",
            "益阳",
            "永州",
            "岳阳",
            "榆林",
            "运城",
            "云浮",
            "玉树",
            "玉溪",
            "玉林",
          ],
        },
        {
          title: "Z",
          lists: [
            "杂多县",
            "赞皇县",
            "枣强县",
            "枣阳市",
            "枣庄",
            "泽库县",
            "增城市",
            "曾都区",
            "泽普县",
            "泽州县",
            "札达县",
            "扎赉特旗",
            "扎兰屯市",
            "扎鲁特旗",
            "扎囊县",
            "张北县",
            "张店区",
            "章贡区",
            "张家港",
            "张家界",
            "张家口",
            "漳平市",
            "漳浦县",
            "章丘市",
            "樟树市",
            "张湾区",
            "彰武县",
            "漳县",
            "张掖",
            "漳州",
            "长子县",
            "湛河区",
            "湛江",
            "站前区",
            "沾益县",
            "诏安县",
            "召陵区",
            "昭平县",
            "肇庆",
            "昭通",
            "赵县",
            "昭阳区",
            "招远市",
            "肇源县",
            "肇州县",
            "柞水县",
            "柘城县",
            "浙江",
            "镇安县",
            "振安区",
            "镇巴县",
            "正安县",
            "正定县",
            "正定新区",
            "正蓝旗",
            "正宁县",
            "蒸湘区",
            "正镶白旗",
            "正阳县",
            "郑州",
            "镇海区",
            "镇江",
            "浈江区",
            "镇康县",
            "镇赉县",
            "镇平县",
            "振兴区",
            "镇雄县",
            "镇原县",
            "志丹县",
            "治多县",
            "芝罘区",
            "枝江市",
            "芷江侗族自治县",
            "织金县",
            "中方县",
            "中江县",
            "钟楼区",
            "中牟县",
            "中宁县",
            "中山",
            "中山区",
            "钟山区",
            "钟山县",
            "中卫",
            "钟祥市",
            "中阳县",
            "中原区",
            "周村区",
            "周口",
            "周宁县",
            "舟曲县",
            "舟山",
            "周至县",
            "庄河市",
            "诸城市",
            "珠海",
            "珠晖区",
            "诸暨市",
            "驻马店",
            "准格尔旗",
            "涿鹿县",
            "卓尼",
            "涿州市",
            "卓资县",
            "珠山区",
            "竹山县",
            "竹溪县",
            "株洲",
            "株洲县",
            "淄博",
            "子长县",
            "淄川区",
            "自贡",
            "秭归县",
            "紫金县",
            "自流井区",
            "资溪县",
            "资兴市",
            "资阳",
          ],
        },
      ],
    },
  ],
  "listtwo|10": [
    {
      "id|+1": 1,
      title: "@ctitle(10,20)",
      img1: "@image(100x100,@color)",
      "count|8000-10000": 8000,
      img2: "https://is1-ssl.mzstatic.com/image/thumb/Purple221/v4/38/a9/37/38a9374b-6a44-03b3-1acb-5d62e28d7a7b/AppIcon-0-0-1x_U007emarketing-0-5-0-0-85-220.png/246x0w.webp",
      wei: "微脉健康",
      mai: "微脉健康官方账号",
      name: "@cname(3,5)",
    },
  ],
  city: [
    {
      title: "A",
      lists: [
        "阿坝",
        "阿拉善",
        "阿里",
        "安康",
        "安庆",
        "鞍山",
        "安顺",
        "安阳",
        "澳门",
      ],
    },
    {
      title: "B",
      lists: [
        "北京",
        "白银",
        "保定",
        "宝鸡",
        "保山",
        "包头",
        "巴中",
        "北海",
        "蚌埠",
        "本溪",
        "毕节",
        "滨州",
        "百色",
        "亳州",
      ],
    },
    {
      title: "C",
      lists: [
        "重庆",
        "成都",
        "长沙",
        "长春",
        "沧州",
        "常德",
        "昌都",
        "长治",
        "常州",
        "巢湖",
        "潮州",
        "承德",
        "郴州",
        "赤峰",
        "池州",
        "崇左",
        "楚雄",
        "滁州",
        "朝阳",
      ],
    },
    {
      title: "D",
      lists: [
        "大连",
        "东莞",
        "大理",
        "丹东",
        "大庆",
        "大同",
        "大兴安岭",
        "德宏",
        "德阳",
        "德州",
        "定西",
        "迪庆",
        "东营",
      ],
    },
    {
      title: "E",
      lists: ["鄂尔多斯", "恩施", "鄂州"],
    },
    {
      title: "F",
      lists: ["福州", "防城港", "佛山", "抚顺", "抚州", "阜新", "阜阳"],
    },
    {
      title: "G",
      lists: [
        "广州",
        "桂林",
        "贵阳",
        "甘南",
        "赣州",
        "甘孜",
        "广安",
        "广元",
        "贵港",
        "果洛",
      ],
    },
    {
      title: "H",
      lists: [
        "杭州",
        "哈尔滨",
        "合肥",
        "海口",
        "呼和浩特",
        "海北",
        "海东",
        "海南",
        "海西",
        "邯郸",
        "汉中",
        "鹤壁",
        "河池",
        "鹤岗",
        "黑河",
        "衡水",
        "衡阳",
        "河源",
        "贺州",
        "红河",
        "淮安",
        "淮北",
        "怀化",
        "淮南",
        "黄冈",
        "黄南",
        "黄山",
        "黄石",
        "惠州",
        "葫芦岛",
        "呼伦贝尔",
        "湖州",
        "菏泽",
      ],
    },
    {
      title: "J",
      lists: [
        "济南",
        "佳木斯",
        "吉安",
        "江门",
        "焦作",
        "嘉兴",
        "嘉峪关",
        "揭阳",
        "吉林",
        "金昌",
        "晋城",
        "景德镇",
        "荆门",
        "荆州",
        "金华",
        "济宁",
        "晋中",
        "锦州",
        "九江",
        "酒泉",
      ],
    },
    {
      title: "K",
      lists: ["昆明", "开封"],
    },
    {
      title: "L",
      lists: [
        "兰州",
        "拉萨",
        "来宾",
        "莱芜",
        "廊坊",
        "乐山",
        "凉山",
        "连云港",
        "聊城",
        "辽阳",
        "辽源",
        "丽江",
        "临沧",
        "临汾",
        "临夏",
        "临沂",
        "林芝",
        "丽水",
        "六安",
        "六盘水",
        "柳州",
        "陇南",
        "龙岩",
        "娄底",
        "漯河",
        "洛阳",
        "泸州",
        "吕梁",
      ],
    },
    {
      title: "M",
      lists: ["马鞍山", "茂名", "眉山", "梅州", "绵阳", "牡丹江"],
    },
    {
      title: "N",
      lists: [
        "南京",
        "南昌",
        "南宁",
        "宁波",
        "南充",
        "南平",
        "南通",
        "南阳",
        "那曲",
        "内江",
        "宁德",
        "怒江",
      ],
    },
    {
      title: "P",
      lists: ["盘锦", "攀枝花", "平顶山", "平凉", "萍乡", "莆田", "濮阳"],
    },
    {
      title: "Q",
      lists: [
        "青岛",
        "黔东南",
        "黔南",
        "黔西南",
        "庆阳",
        "清远",
        "秦皇岛",
        "钦州",
        "齐齐哈尔",
        "泉州",
        "曲靖",
        "衢州",
      ],
    },
    {
      title: "R",
      lists: ["日喀则", "日照"],
    },
    {
      title: "S",
      lists: [
        "上海",
        "深圳",
        "苏州",
        "沈阳",
        "石家庄",
        "三门峡",
        "三明",
        "三亚",
        "商洛",
        "商丘",
        "上饶",
        "山南",
        "汕头",
        "汕尾",
        "韶关",
        "绍兴",
        "邵阳",
        "十堰",
        "朔州",
        "四平",
        "绥化",
        "遂宁",
        "随州",
        "宿迁",
        "宿州",
      ],
    },
    {
      title: "T",
      lists: [
        "天津",
        "太原",
        "泰安",
        "泰州",
        "台州",
        "唐山",
        "天水",
        "铁岭",
        "铜川",
        "通化",
        "通辽",
        "铜陵",
        "铜仁",
        "台湾",
      ],
    },
    {
      title: "W",
      lists: [
        "武汉",
        "乌鲁木齐",
        "无锡",
        "威海",
        "潍坊",
        "文山",
        "温州",
        "乌海",
        "芜湖",
        "乌兰察布",
        "武威",
        "梧州",
      ],
    },
    {
      title: "X",
      lists: [
        "厦门",
        "西安",
        "西宁",
        "襄樊",
        "湘潭",
        "湘西",
        "咸宁",
        "咸阳",
        "孝感",
        "邢台",
        "新乡",
        "信阳",
        "新余",
        "忻州",
        "西双版纳",
        "宣城",
        "许昌",
        "徐州",
        "香港",
        "锡林郭勒",
        "兴安",
      ],
    },
    {
      title: "Y",
      lists: [
        "银川",
        "雅安",
        "延安",
        "延边",
        "盐城",
        "阳江",
        "阳泉",
        "扬州",
        "烟台",
        "宜宾",
        "宜昌",
        "宜春",
        "营口",
        "益阳",
        "永州",
        "岳阳",
        "榆林",
        "运城",
        "云浮",
        "玉树",
        "玉溪",
        "玉林",
      ],
    },
    {
      title: "Z",
      lists: [
        "杂多县",
        "赞皇县",
        "枣强县",
        "枣阳市",
        "枣庄",
        "泽库县",
        "增城市",
        "曾都区",
        "泽普县",
        "泽州县",
        "札达县",
        "扎赉特旗",
        "扎兰屯市",
        "扎鲁特旗",
        "扎囊县",
        "张北县",
        "张店区",
        "章贡区",
        "张家港",
        "张家界",
        "张家口",
        "漳平市",
        "漳浦县",
        "章丘市",
        "樟树市",
        "张湾区",
        "彰武县",
        "漳县",
        "张掖",
        "漳州",
        "长子县",
        "湛河区",
        "湛江",
        "站前区",
        "沾益县",
        "诏安县",
        "召陵区",
        "昭平县",
        "肇庆",
        "昭通",
        "赵县",
        "昭阳区",
        "招远市",
        "肇源县",
        "肇州县",
        "柞水县",
        "柘城县",
        "浙江",
        "镇安县",
        "振安区",
        "镇巴县",
        "正安县",
        "正定县",
        "正定新区",
        "正蓝旗",
        "正宁县",
        "蒸湘区",
        "正镶白旗",
        "正阳县",
        "郑州",
        "镇海区",
        "镇江",
        "浈江区",
        "镇康县",
        "镇赉县",
        "镇平县",
        "振兴区",
        "镇雄县",
        "镇原县",
        "志丹县",
        "治多县",
        "芝罘区",
        "枝江市",
        "芷江侗族自治县",
        "织金县",
        "中方县",
        "中江县",
        "钟楼区",
        "中牟县",
        "中宁县",
        "中山",
        "中山区",
        "钟山区",
        "钟山县",
        "中卫",
        "钟祥市",
        "中阳县",
        "中原区",
        "周村区",
        "周口",
        "周宁县",
        "舟曲县",
        "舟山",
        "周至县",
        "庄河市",
        "诸城市",
        "珠海",
        "珠晖区",
        "诸暨市",
        "驻马店",
        "准格尔旗",
        "涿鹿县",
        "卓尼",
        "涿州市",
        "卓资县",
        "珠山区",
        "竹山县",
        "竹溪县",
        "株洲",
        "株洲县",
        "淄博",
        "子长县",
        "淄川区",
        "自贡",
        "秭归县",
        "紫金县",
        "自流井区",
        "资溪县",
        "资兴市",
        "资阳",
      ],
    },
  ],
  "yi|15": [
    {
      name: "@cname",
      "zhu|1": ["主治中医师", "副主任医师"],
      "shen|1": ["神经内科", "中医科"],
      "bei|1": [
        "北京电力医院",
        "中国中医科学望京医院",
        "北京中医药大学医院方庄院区",
      ],
      san: "三甲",
      "shang|1": [
        "黄褐斑",
        "痔疮",
        "青春痘",
        "失眠",
        "四肢骨折",
        "冠心病",
        "急性心梗",
        "心衰",
        "高血压",
      ],
      img: () => {
        const width = 100;
        const height = Mock.Random.integer(100, 200);
        return `https://picsum.photos/${width}/${height}`;
      },
    },
  ],
  "sortlist|30": [
    {
      "id|+1": 1,
      title: "@ctitle(2,4)",
      img: () => {
        const width = 150;
        const height = Mock.Random.integer(100, 200);
        return `https://picsum.photos/${width}/${height}`;
      },
      "count|8000-10000": 8000,
      name: "@cname(3,5)",
    },
  ],
  "yptablist|6": [
    {
      "title|+1": [
        "感冒发烧",
        "妇科用药",
        "男科用药",
        "消化用药",
        "皮肤用药",
        "改善睡眠",
      ],
      "children|20-50": [
        {
          img: () => {
            const width = 100;
            const height = Mock.Random.integer(100, 200);
            return `https://picsum.photos/${width}/${height}`;
          },
          title: "@ctitle(5,10)",
          "xprice|1-100": 1,
          "yprice|1-100": 1,
        },
      ],
    },
  ],
  "neitab|5": [
    {
      "title|+1": ["心血管", "血液内科", "心内科", "中意内科", "肿瘤内科"],
      "children|10": [
        {
          "id|+1": "@id",
          img: () => {
            const width = 100;
            const height = Mock.Random.integer(100, 200);
            return `https://picsum.photos/${width}/${height}`;
          },
          name: "@cname",
          zhu: "主任医师",
          "yuan|1": ["北京电力医院", "浙江省台州医院", "娄底市中心医院"],
          shen: ["心血管内科", "血液内科", "心内科", "中意内科"],
          "zi|3000-9000": 3000,
          "ping|3-5": 3,
        },
      ],
    },
  ],

  "yzdp|4": [
    {
      title: "@ctitle(4)",
      city: "@city(true)",
      "sp|3": [
        {
          img: () => {
            const width = 100;
            const height = Mock.Random.integer(100, 200);
            return `https://picsum.photos/${width}/${height}`;
          },
          title: "@ctitle(5,10)",
          "price|1-100": 1,
          id: "@id",
        },
      ],
    },
  ],
});

let user = [
  {
    username: "18510204378",
    passwrd: "admin",
    info: "https://picsum.photos/100/139",
    role: "admin",
  },
  {
    username: "13522506563",
    passwrd: "user",
    info: "https://picsum.photos/100/156",
    role: "user",
  },
];

// 支付宝支付接口

const { AlipaySdk } = require("alipay-sdk");

const alipaySdk = new AlipaySdk({
  appId: "9021000133631283",
  // keyType: 'PKCS1', // 默认值。请与生成的密钥格式保持一致，参考平台配置一节
  privateKey:
    "MIIEpAIBAAKCAQEAi9eURBlV4i3vRL84SkALiY/y/G80THjUkdQExX0H6ak+89iu+Dmrn7UlORbmO5rguL0LzNqA+GfDyj+Lwuj3KVg7D4ElzureyRxdK33R6u11gxuSxsKCmICvF3M71XrPvRYkXdLPEcGRWIxx6bUfRwK7d3opiDomG92ExreO746ysy0ZB5L09raI/BYzMVujx+CntDNbKm5x1Ll2XxVebdbD++L1hkdkp70gmKRYshdMmaI3em5YhGFbyEjMIEqROsOD4XDDje+HHI4W2GAXeJ28ZS7Vx9tZoyWYNIJd3erUOmPb6KZXEekEaQez04OSlYS/dtlKajk6Zws3saTK1wIDAQABAoIBAD65A/yDbJ0VQ1OPfRz4mvQph7An5MpEC/wYn8dArFLmoaDX2Krnmw34PujbV4r2jcLusCNDAkPors3BMNvMiEeYFm1+3MlxWVnVCgke1w/LUEDtFilmRxNF7MLU4cp/2juSed9HVa8+JgYUgGd14MCF/jW5qnU6t6sZ8Zr76/WQXtdb1JQQt+OO8eCw+rmLi+QANR6wUerSz88YzSAXs5kSA/9f3vKTwu2ynrxkyLtj/P6fNmtkcWFp1h2M20zFrHqpmrjOePVDsNITglW59Cp6k0UbIsx7AJkV20XVKHK9ZU/5pVLlnFHeSLpP/rksVdtgoCb3z0iQ2+au/ZPeqykCgYEAwhYRaIMzKhPdlfgSomzbUhVKZ0/m7OCZveg1tPPYmZPcmc+tNB5dA9bqcXIiEEcEId9ZDTBf4G8E8i+6kEaPlT56AMwHy/gD4RZcG9wXOb58Pm8waY4IovhI5UwGchIQxk8XEvZ3qAd2kjoVfNpoIJLZzsvWY1T9sCSqQQh2dAMCgYEAuHOzLH13JEOJK973nPkVZ3KlFPPPS45JItwF9hmwKlkEqsq/xbi+9+LYg/H0Wg+kUxaiRCiJc0k6zMveer/4MotSjHEzaLelCRc36FrexAgoHO/nGdnjCsuWIINehqAJ0Fosk5uL0MZxNEQjMZJyB5Sm4sWkyF8yUmml/0ixN50CgYBIYmaXrebVGJeZqO16OlMJp/sZ0Mj1K0brdsEg/ZiYnna1vqiAOZrDJdJGASUHIRU/dMcHjjUTxRP5JyfTSx2dsbFavr1hqtv3hJlRoqHe3VYFCv7pPxmlfifhrJryzB4Jd9HJNralqjLkklkVOXeAPoSRBaCtZzM+EE6W9osG9QKBgQCV5KA0hXkupRtx5W3/yINWX9o7nq5Uzjos8/R8O//nShP632zctvep5lThVNyn25JEW15eWTrpzxbTmtEfm6WNHZ9lthB7BtI9AvtR/ZaOY7qFWYfKgEB7Y1qK7XcBnEidYspa4crLTJhuSvj2rfWwp2K/YrI4ivQP+P8G6AHsGQKBgQCe+SaMvlk5BHfUTffcso7CMTFKXx9opdTviLGGmod3Ag4fEny5M4GIF5ck9mL3Pvhz65KGES1WNkR1PYeAgGCFDs2NhdJhjSNG9zhpJqU+rIrQg6+1P2D2qhJRaoBU1mzKX7oVPGKVjUEuGcQXISGGnPVzYnV9N38SuWzQxlrpaw==",
  alipayPublicKey:
    "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAi9eURBlV4i3vRL84SkALiY/y/G80THjUkdQExX0H6ak+89iu+Dmrn7UlORbmO5rguL0LzNqA+GfDyj+Lwuj3KVg7D4ElzureyRxdK33R6u11gxuSxsKCmICvF3M71XrPvRYkXdLPEcGRWIxx6bUfRwK7d3opiDomG92ExreO746ysy0ZB5L09raI/BYzMVujx+CntDNbKm5x1Ll2XxVebdbD++L1hkdkp70gmKRYshdMmaI3em5YhGFbyEjMIEqROsOD4XDDje+HHI4W2GAXeJ28ZS7Vx9tZoyWYNIJd3erUOmPb6KZXEekEaQez04OSlYS/dtlKajk6Zws3saTK1wIDAQAB",
  gateway: "https://openapi-sandbox.dl.alipaydev.com/gateway.do",
});
router.get("/pay", async (ctx) => {
  let { id, title, price, body } = ctx.query;
  const bizContent = {
    out_trade_no: Mock.mock("@id"),
    product_code: "FAST_INSTANT_TRADE_PAY",
    subject: "帆帆帆帆",
    total_amount: 100,
  };
  // 支付页面接口，返回 html 代码片段，内容为 Form 表单
  const result = alipaySdk.pageExec("alipay.trade.page.pay", {
    method: "GET",
    bizContent,
    returnUrl: "https://www.taobao.com",
  });
  ctx.body = {
    code: 200,
    msg: "请求成功",
    result: result,
  };
});

router.get("/query", async (ctx) => {
  let { id } = ctx.query;
  const bizContent = {
    out_trade_no: id,
  };

  // 支付页面接口，返回 html 代码片段，内容为 Form 表单
  const result = alipaySdk.pageExec("alipay.trade.query", {
    method: "GET",
    bizContent,
    returnUrl: "https://www.taobao.com",
  });
  let res = await axios({ url: result, method: "get" });
  if (res.data.alipay_trade_query_response.code == "40004") {
    ctx.body = {
      code: 40004,
      msg: "订单不存在",
    };
  } else if (res.data.alipay_trade_query_response.code == "10000") {
    switch (res.data.alipay_trade_query_response.trade_status) {
      case "WAIT_BUYER_PAY":
        ctx.body = {
          code: 201,
          msg: "交易创建，等待买家付款",
        };
        break;
      case "TRADE_CLOSED":
        ctx.body = {
          code: 201,
          msg: "未付款交易超时关闭，或支付完成后全额退款",
        };
        break;
      case "TRADE_SUCCESS":
        ctx.body = {
          code: 200,
          msg: "交易支付成功",
        };
        break;
      case "TRADE_FINISHED":
        ctx.body = {
          code: 201,
          msg: "交易结束，不可退款",
        };
        break;
    }
  }
});

// 后台管理的登录

// 后台管理用户接口
router.get("/v1/userlist", (ctx) => {
  ctx.body = {
    code: 200,
    user,
    msg: "用户信息获取成功",
  };
});
// 后台管理登录接口
router.post("/v1/login", (ctx) => {
  let { username, password } = ctx.request.body;
  let items = user.find(
    (item) => item.username == username && item.passwrd == password
  );
  if (items) {
    ctx.body = {
      code: 200,
      msg: "登录成功",
      userInfo: items,
      token: JWT.sign(items.username, "dsuyfdsuyfsd"),
      role: items.role,
    };
  } else {
    ctx.body = {
      code: 400,
      msg: "登录失败",
    };
  }
});




router.post('/v1/sigin', (ctx) => {
   
  let { username,password } = ctx.request.body
    let items = user.find((item) => item.username == username)
  if (items) {
    ctx.body = {
      code: 400,
      msg: "该用户已存在，请重新输入"
    }
  } else {
    user.push({
      username: username,
      passwrd:password,
      role: "admin",
      info: Mock.mock(() => {
        const width = 100;
        const height = Mock.Random.integer(100, 200);
        return `https://picsum.photos/${width}/${height}`;
      }),
    }) 
    ctx.body = {
      code: 200,
      msg: "注册成功"
    }
  }
    ctx.body = {
      code: 200,
      msg: "注册成功"
    }
  // let { values } = ctx.request.body
  // console.log(values) 
  // let items = user.find((item) => item.username == values)
  // if (items) {
  //   ctx.body = {
  //     code: 400,
  //     msg: "该用户已存在，请重新输入"
  //   }
  // } else {
  //   user.push({
  //     username: values.username,
  //     passwrd: values.password,
  //     role: "admin",
  //     info: Mock.mock(() => {
  //       const width = 100;
  //       const height = Mock.Random.integer(100, 200);
  //       return `https://picsum.photos/${width}/${height}`;
  //     }),
  //   }) 
  //   ctx.body = {
  //     code: 200,
  //     msg: "注册成功"
  //   }
  // }
})




router.post("/login", (ctx) => {
  let { tel } = ctx.request.body;
  let items = user.find((item) => item.username == tel);
  if (items) {
    ctx.body = {
      code: 200,
      msg: "登录成功",
      token: JWT.sign(items.username, "dsfgsjdfjdgfjhdgfjdhgf"),
      useritem: {
        user: items.username,
        info: items.info,
      },
    };
  } else {
    ctx.body = {
      code: 400,
      msg: "登录失败",
    };
  }
});

router.get("/yzdp", (ctx) => {
  ctx.body = {
    code: 200,
    yzdp,
  };
});

router.get("/yptablist", (ctx) => {
  ctx.body = {
    code: 200,
    yptablist,
  };
});

router.get("/yzm", (ctx) => {
  let codeLength = 4; // 验证码长度，可以修改此值来改变长度
  let code = "";
  let characters =
    "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
  for (let i = 0; i < codeLength; i++) {
    let randomIndex = Math.floor(Math.random() * characters.length);
    code += characters.charAt(randomIndex);
  }
  ctx.body = {
    code: 200,
    yzm: code,
    msg: "验证码发送成功",
  };
});

router.get("/kstab", (ctx) => {
  ctx.body = {
    code: 200,
    kstab,
  };
});

router.get("/detail", (ctx) => {
  let { items } = ctx.request.query;
  let itemsone = JSON.parse(items)[0];
  let itemstwo = JSON.parse(items)[1];
  let itemslist = tabSilce[itemstwo].children;
  let itemsObj = itemslist.find((item) => item.id == itemsone);
  ctx.body = {
    code: 200,
    itemsObj,
  };
});

router.get("/tabSilce", async (ctx, next) => {
  ctx.body = {
    code: 200,
    tabSilce,
  };
});

router.get("/search", async (ctx, next) => {
  let { val } = ctx.request.query;
  if (val) {
    let items = search.filter((item) => item.title.includes(val));
    ctx.body = {
      code: 200,
      items: items,
    };
  } else {
    ctx.body = {
      code: 200,
      items: search,
    };
  }
});

router.get("/tablist", async (ctx, next) => {
  ctx.body = {
    code: 200,
    tablist,
  };
});

router.get("/list", async (ctx, next) => {
  ctx.body = {
    code: 200,
    list,
  };
});
router.get("/city", async (ctx, next) => {
  ctx.body = {
    code: 200,
    city,
  };
});
router.get("/yi", async (ctx, next) => {
  ctx.body = {
    code: 200,
    yi,
  };
});
router.get("/cheng", async (ctx, next) => {
  ctx.body = {
    code: 200,
    cheng,
  };
});
router.get("/listtwo", async (ctx, next) => {
  ctx.body = {
    code: 200,
    listtwo,
  };
});

router.get("/sortlist", (ctx) => {
  ctx.body = {
    code: 200,
    sortlist,
  };
});
router.get("/neitab", async (ctx, next) => {
  ctx.body = {
    code: 200,
    neitab,
  };
});

/****************************************增删改查接口********************************************/
// 搜索接口
router.post("/search", (ctx) => {
  let { val } = ctx.request.body;
  if (val !== "") {
    let items = list.filter(
      (item) =>
        item.id == val ||
        item.title == val ||
        item.name == val ||
        item.wei == val
    );
    ctx.body = {
      items,
    };
  } else {
    ctx.body = {
      items: list,
    };
  }
});
// 修改接口
router.put("/edit", (ctx) => {
  let { id } = ctx.request.body;
  let items = list.find((item) => item.id == id);
  if (items) {
    Object.assign(items, ctx.request.body);
    ctx.body = {
      code: 200,
      msg: "修改成功",
    };
  } else {
    ctx.body = {
      code: 400,
      msg: "修改失败",
    };
  }
});
// 添加接口
router.put("/add", (ctx) => {
  list.unshift({ ...ctx.request.body, id: Mock.mock("@id") });
  ctx.body = {
    code: 200,
    msg: "添加成功",
  };
});
// 删除接口
router.get("/del", (ctx) => {
  let { id } = ctx.request.query;
  if (id) {
    list = list.filter((item) => item.id !== id);
    ctx.body = {
      code: 200,
      msg: "删除成功",
    };
  } else {
    ctx.body = {
      code: 400,
      msg: "删除失败",
    };
  }
});

module.exports = router;
